package com.maimang.platform.crm.service;

import com.dingtalk.api.response.OapiRoleGetroleResponse;
import com.dingtalk.api.response.OapiRoleGetrolegroupResponse;
import com.dingtalk.api.response.OapiRoleListResponse;
import com.dingtalk.api.response.OapiRoleSimplelistResponse;

/**
 * @author Rocky
 * @version 1.0.0
 * @classname DingTalkRoleService
 * @description <br>钉钉角色管理service</br>
 * @date 2019-09-22 13:36
 * @email jintaozhao@qq.com
 */
public interface DingTalkRoleService {

	/**
	 * 获取角色组
	 *
	 * @param groupId 角色组的Id
	 * @return OapiRoleGetrolegroupResponse
	 * @throws Exception
	 */
	OapiRoleGetrolegroupResponse getRoleGroup(Long groupId) throws Exception;

	/**
	 * 获取角色列表
	 *
	 * @param offset 分页偏移，默认值：0
	 * @param size   分页大小，默认值：20，最大值200
	 * @return OapiRoleListResponse
	 * @throws Exception
	 */
	OapiRoleListResponse getRoleList(Long offset, Long size) throws Exception;

	/**
	 * 获取角色下的员工列表
	 *
	 * @param roleId 角色ID
	 * @param offset 分页偏移，默认值：0
	 * @param size   分页大小，默认值：20，最大值200
	 * @return OapiRoleSimplelistResponse
	 * @throws Exception
	 */
	OapiRoleSimplelistResponse getSimpleList(Long roleId, Long offset, Long size) throws Exception;

	/**
	 * 获取角色详情
	 *
	 * @param roleId 角色Id
	 * @return OapiRoleGetroleResponse
	 * @throws Exception
	 */
	OapiRoleGetroleResponse getRole(Long roleId) throws Exception;


}
